﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class JuriidilineIsikTypeV3 : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IJuriidilineIsikTypeV3 {
        
        private string @__arinimi;
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRegistrikoodType @__registrikood;
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IAadressType @__aadress;
        
        private string @__email;
        
        public JuriidilineIsikTypeV3() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public JuriidilineIsikTypeV3(string @arinimi, global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRegistrikoodType @registrikood, global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IAadressType @aadress, string @email) {
            this.@__arinimi = @arinimi;
            this.@__registrikood = @registrikood;
            this.@__aadress = @aadress;
            this.@__email = @email;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public JuriidilineIsikTypeV3(string @arinimi, global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRegistrikoodType @registrikood) {
            this.@__arinimi = @arinimi;
            this.@__registrikood = @registrikood;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected JuriidilineIsikTypeV3(IJuriidilineIsikTypeV3 @juriidilineIsikTypeV3) {
            this.@__arinimi = @juriidilineIsikTypeV3.Arinimi;
            this.@__registrikood = @juriidilineIsikTypeV3.Registrikood;
            this.@__aadress = @juriidilineIsikTypeV3.Aadress;
            this.@__email = @juriidilineIsikTypeV3.Email;
        }
        
        public virtual string Arinimi {
            get {
                return this.@__arinimi;
            }
            set {
                this.@__arinimi = value;
            }
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRegistrikoodType Registrikood {
            get {
                return this.@__registrikood;
            }
            set {
                this.@__registrikood = value;
            }
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IAadressType Aadress {
            get {
                return this.@__aadress;
            }
            set {
                this.@__aadress = value;
            }
        }
        
        public virtual string Email {
            get {
                return this.@__email;
            }
            set {
                this.@__email = value;
            }
        }
    }
}
